The Internet is a vast collection of computing resources, interconnected as a network, from sites around the world. It is used every day by millions of individuals. The World Wide Web (referred to herein as the “Web”) is that portion of the Internet that uses the HyperText Transfer Protocol (“HTTP”) as a protocol for exchanging messages. (Alternatively, the “HTTPS” protocol can be used, where this protocol is a security-enhanced version of HTTP.)
A user of the Internet typically accesses and uses the Internet by establishing a network connection through the services of an Internet Service Provider (ISP). An ISP provides computer users the ability to dial a telephone number using their computer modem (or other connection facility, such as satellite transmission), thereby establishing a connection to a remote computer owned or managed by the ISP. This remote computer then makes services available to the user's computer. Typical services include: a search facility to search throughout the interconnected computers of the Internet for files of interest to the user; a browse capability for displaying information files located with the search facility; and an electronic mail facility, with which the user can send and receive mail messages from other computer users.
The HTTP communications protocol uses a request/response paradigm, where the electronic messages sent between communicating computers can be categorized as either requests for information or responses to those requests.
The user working in a Web environment will have software running on his or her computer to allow him or her to create and send requests for information onto the Internet, and to see the results. These functions are typically combined in a software package that is referred to as a “Web browser”, or “browser”. After the user has created a request using the browser, the request message is sent out into the Internet (typically, via an ISP, as described above). The target of the request message is one of the interconnected computers in the Internet network. That computer receives the message, attempts to find the data satisfying the user's request, formats that data for display with the user's browser, and returns the formatted response to the browser software running on the user's computer.
This is an example of a client-server model of computing, where the computer at which the user requests information is referred to as the client or client machine, and the computer that locates the information and returns it to the client is the server or server machine. In the Web environment, the server is referred to as a “Web server”.
Content on the Internet is served in individual files in the form of HTML pages. HTML (HyperText Markup Language) is a computer programming language specifically designed for a distributed network such as the Internet. An HTML page contains HTML code, which indicates how the information content is to be displayed, as well as at least some of the actual content. Pages also typically contain references to other files where at least some of the content is contained. Web browser software is designed to issue requests for pages in the form of URLs (Universal Resource Locators). A URL essentially is an address of a file that is accessible through the Internet. The URL includes the name of the file that is being requested and the IP (Internet Protocol) address of the server on which it is to be found.
A user at a client machine may type a URL into an appropriate field in a GUI (Graphical User Interface) generated by the Web browser software in order to address Web pages. Another way of addressing Web pages is by hyperlinking. A hyperlink is a portion in one Web page, such as a portion of text or an image, that, when selected (such as by positioning a cursor over that portion and pressing a button on the cursor control device), automatically addresses another Web page. Thus, for example, by manipulating one's mouse to cause the screen cursor to move over a hyperlink and clicking, the page addressed by that hyperlink is accessed by the browser.
Each request is routed through the Internet to the server identified in the URL. That server then returns the requested page through the Internet to the client machine that requested it. The Web browser software reads the HTML code in the page and, if that page contains references to other files containing some of the content, the browser software sends further requests for those files. It displays the content (whether contained directly in the HTML page or in another file referenced within the HTML page) in a manner dictated by the HTML code in the page.
Countless commercial, educational, government and other institutions operate servers containing HTML pages that are accessible to client machines via the Internet. The term “Web site” generally refers to a collection of HTML pages that are maintained on (or generated on-the-fly by) one or more servers by or on behalf of a single entity and that are related to each other in some fashion.
As noted, one of the more common uses of the Internet is shopping. Large scale Web retailers operate Web sites that consumers can navigate through to find a particular product or products for purchase. As is well known in all forms of retailing, certain products tend to go with each other in the sense that they are often purchased together because they relate to one another or relate to the same purpose. For instance, someone who is purchasing a new men's suit may very well also be interested in purchasing related accessories, such as a tie or a shirt to go with the suit. Even if such person did not have a preexisting intent to purchase additional products, if a matching tie and shirt were presented to such person while in the process of purchasing the suit, there is a reasonable likelihood that such a person also may purchase the accessories.
For purposes of this discussion, there are two general types of relationships between multiple goods, typically termed packages and bundles, respectively. The suit and tie example above is a classic example of a bundle of goods. Bundles are characterized by products which are related to each other, but typically are not sold or priced together as a unit. Other examples of bundles include (1) golf clubs and a golf bag or (2) a volleyball net and a volleyball.
Packages, on the other hand, typically comprise more closely related products in that they are usually sold together for a single collective price. A classic example of a package is a men's suit, which comprises a jacket and a pair of pants. A suit usually is sold as a unit for a particular price and the jacket and pants cannot be purchased separately. However, the fact that something is a package does not necessarily preclude the possibility of also selling the individual products (i.e., the jacket and the pants) separately. For instance, it is not uncommon for a retailer to offer a second pair of identical pants for an extra charge, since pants tend to wear out much more quickly than jackets. However, separately purchasing the individual products that make up the package usually will have a higher cost than buying them as a package.
Further, it certainly is possible for the same group of products to be offered for sale as either a package or a bundle. For instance, skis, ski boots, bindings, and poles are often sold as a package with a special package price that is less than the total cost if the products are purchased separately. However, the very same ski's, ski boots, bindings and poles could be offered for sale individually and separately and, thus, the retailer, could also present them for sale as a bundle.
In essence, bundles or bundling of products is an attempt to cross-sell two or more related products. However, the term bundle, at least in the vernacular of the electronic commerce field, is typically used slightly more narrowly than cross-selling and typically is used to refer to products that are shown on a Web page in a single image, whereas cross-selling is usually used either as a generic term encompassing essentially any attempt to direct a consumer to an additional product or at least where the Web page displays separate individual images of the products.
The key distinction between a bundle and a package relevant to this disclosure essentially is that a package is a collectively priced set of goods that is treated as a single unit for record keeping and other purposes, whereas a bundle is two or more distinct goods that a retailer is attempting to cross sell with each other, but for which there is no special collective price.
Typically, a consumer navigates through the Web pages of a Web site until he or she finds a page on which the product of interest is located. A well designed Web site will also display related products on the same page. One common scheme or displaying goods for sale in electronic retailing is to present bundles of goods in a single image on the page and include text that introduces all of the bundled goods in an initial paragraph or sentence, which is followed by separate descriptions and pricing information for the products. In at least one common Web site design scheme, if a persons arrives at the product of interest by specific, progressive navigation through the pages of the Web site, the article of interest is not presented in a bundle presentation, but rather separately, as shown in FIG. 1, for instance. In this case, the article is a package, and particularly, a men's suit. However, if a person arrives at the product page as the result of a search using a search engine or a search function provided by the Web site operator, the product is displayed as part of a bundle, as shown in FIG. 2. FIG. 2, for instance, shows a Web page offering a men's suit bundled with a matching tie. In fact, an e-tailer may have two different images for a product, one where it is shown collectively with related products for presentation as part of a bundle and another where it is shown individually.
Packages, on the other hand, normally are always presented in one image and described collectively and priced as a unit, as shown in FIGS. 1 and 2. Further, a bundle may include a package, also as illustrated in FIGS. 1 and 2.
The use of shopping cart pages for transacting sales via the Internet is well known. When a consumer indicates a desire to purchase one or more products by, for instance, selecting a “Buy Now” button on the product display page, the “Buy Now” button hyperlinks to a shopping cart page, in which the products selected for purchase by the consumer are listed usually along with their price. Typically, it is not until the user clicks on another button in the shopping cart page, e.g., a “Check Out” button, that the tax and shipping charges and total cost are calculated.
In any event, when a product is added to a shopping cart page, the SKU (Stock Keeping Unit) number is added to a list that the retail Web site operator keeps for the transaction. SKU's are well known to all retailers, including electronic commerce retailers (e-tailers). They are identification codes (usually alpha-numeric) for purposes of record keeping. Retailers typically assign a different SKU to each different product they offer for sale. The SKU may or may not actually be displayed on the shopping cart page, but is essential to the retailer in terms of keeping track of all of the necessary information for completing and filling orders and for stock keeping and inventory purposes.
Many items such as clothing, come in many different sizes and colors. For instance, what may be presented as a single men's suit jacket on a Web page (or a paper catalog for that matter) actually may comprise scores of different size jackets, The same is true of a pair of suit pants. For instance, suit jackets come in different chest sizes that can range from about 37 inches to as much as 56 inches and different lengths/girths, such as short, regular, long, extra long, portly, and portly short. Suit pants come in different permutations of waist and inseam sizes that could range from about 30 inches to 48 inches for waist sizes and 28 inches to 36 inches for inseam lengths (in one or two inch increments). While suits made of different fabrics typically are presented as different products, it also is not uncommon for a retailer to treat the fabric selection as another option, like waist or inseam length. Accordingly, a “package” comprising a suit jacket and a pair of suit pants to form a men's suit actually can present a very large number of permutations of jacket and pants. Thus, the number of possible permutations of actual pant and jacket combinations for a single suit “package” for purposes of stock keeping typically can run into the millions. Of course, many of the possible permutations of combinations of pants and jackets are improbable. For instance, it is highly unlikely that anyone would require a suit comprising an extra long jacket with a chest size of 37 inches and pants with an inseam of 30 inches and waist of 48 inches. Therefore, the retailer may choose not to offer such a combination. However, even discounting highly improbable jacket and pant combinations, the number of permutations can be quite large.
A specific product for which all variables (e.g. waist, inseam, and fabric) have been assigned is herein termed an item.
Prior art electronic commerce systems have utilized schemes in which a different SKU number is necessary for each possible combination of pants and jacket that can be sold as a package.
At least one reason why SKUs were assigned for each different combination of items comprising a package in the prior art is because the individual items (which may each have a SKU number of its own) comprising a package needed to be related to each other in some logical fashion so that they could be treated as a unit for some purposes. Let us consider as one example, a situation in which an individual places an electronic order for a particular mens suit having a certain jacket size and a certain pants size and for which the jacket size is found to be unavailable. Not only the jacket, but also the corresponding pair of pants that forms part of the package must be deleted from the order. The use of a unique SKU for that jacket and pants combination as well as a separate unique SKU for that particular size pants and another, separate SKU for that particular size jacket allows the relevant software to treat the jacket and pants as a unit when necessary or as separate entities, when necessary. Bundles often are treated the same way as packages. Particularly, each bundle of goods is assigned its own SKU number.
Accordingly, if an electronic commerce retailer, for instance, wants to bundle a tie, socks and shirt with a suit, the number of SKUs that the retailer must assign and maintain in its databases can be astronomical and extremely difficult to manage. Specifically, as the number of SKUs increases, the databases that the e-tailer must maintain become bloated, thus slowing down the response times of the database servers and/or requiring more powerful and thus more expensive servers to maintain acceptable response times.
Accordingly, it is an object of the present invention to provide an improved software based method and apparatus for selling packaged and bundled items via electronic commerce.
It is a further object of the present invention to provide an improved method and apparatus for transacting electronic commerce.
It is another object of the present invention to provide a software based method and apparatus for record keeping with respect to packaged and bundled items in which the relationships between objects are defined at the product level, rather than the item level.